gusucode.com > 阵列信号处理书的源码 > MATALB 程序/11.一阶前向预测的DOA估计算法MATLAB程序/receive_signal.m
function signal = receive_signal(phi, d, element_num, wavelength,fd, prf, signal_power, snr, snapshot_num) % 信号采样 % A = array_manifold(phi, d, element_num, wavelength); noise_power = signal_power / 10 .^ (snr / 10); signal_num = length(phi); noise = wgn(element_num, snapshot_num, noise_power, 'linear', 'complex'); S = zeros(signal_num, snapshot_num); theta = 2 *pi * rand(1, signal_num); for i = 1 : signal_num w = 2 * pi * fd(i) / prf * (0 : snapshot_num - 1); S(i, :) = signal_power .^0.5 * exp(j * theta(i)) * exp(j * w); % 模拟的信号为正弦波 end signal = A * S + noise;